<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>get_data_code_2d_param [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_identification.html">Identification</a> / <a href="toc_identification_datacode.html">Data Code</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">get_data_code_2d_param</span><span data-if="c" style="display:none;">T_get_data_code_2d_param</span><span data-if="cpp" style="display:none;">GetDataCode2dParam</span><span data-if="dotnet" style="display:none;">GetDataCode2dParam</span><span data-if="python" style="display:none;">get_data_code_2d_param</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">get_data_code_2d_param</span><span data-if="c" style="display:none;">T_get_data_code_2d_param</span><span data-if="cpp" style="display:none;">GetDataCode2dParam</span><span data-if="dotnet" style="display:none;">GetDataCode2dParam</span><span data-if="python" style="display:none;">get_data_code_2d_param</span></code> — Get one or several parameters that describe the 2D data code model.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>get_data_code_2d_param</b>( :  : <a href="#DataCodeHandle"><i>DataCodeHandle</i></a>, <a href="#GenParamName"><i>GenParamName</i></a> : <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_get_data_code_2d_param</b>(const Htuple <a href="#DataCodeHandle"><i>DataCodeHandle</i></a>, const Htuple <a href="#GenParamName"><i>GenParamName</i></a>, Htuple* <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>GetDataCode2dParam</b>(const HTuple&amp; <a href="#DataCodeHandle"><i>DataCodeHandle</i></a>, const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>, HTuple* <a href="#GenParamValue"><i>GenParamValue</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>::<b>GetDataCode2dParam</b>(const HTuple&amp; <a href="#GenParamName"><i>GenParamName</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>::<b>GetDataCode2dParam</b>(const HString&amp; <a href="#GenParamName"><i>GenParamName</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>::<b>GetDataCode2dParam</b>(const char* <a href="#GenParamName"><i>GenParamName</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>::<b>GetDataCode2dParam</b>(const wchar_t* <a href="#GenParamName"><i>GenParamName</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>GetDataCode2dParam</b>(<a href="HTuple.html">HTuple</a> <a href="#DataCodeHandle"><i>dataCodeHandle</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GenParamName"><i>genParamName</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#GenParamValue"><i>genParamValue</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>.<b>GetDataCode2dParam</b>(<a href="HTuple.html">HTuple</a> <a href="#GenParamName"><i>genParamName</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HDataCode2D.html">HDataCode2D</a>.<b>GetDataCode2dParam</b>(string <a href="#GenParamName"><i>genParamName</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>get_data_code_2d_param</b>(<a href="#DataCodeHandle"><i>data_code_handle</i></a>: HHandle, <a href="#GenParamName"><i>gen_param_name</i></a>: MaybeSequence[str]) -&gt; Sequence[Union[int, str, float]]</code></p>
<p>
<code>def <b>get_data_code_2d_param_s</b>(<a href="#DataCodeHandle"><i>data_code_handle</i></a>: HHandle, <a href="#GenParamName"><i>gen_param_name</i></a>: MaybeSequence[str]) -&gt; Union[int, str, float]</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">get_data_code_2d_param</span><span data-if="c" style="display:none">get_data_code_2d_param</span><span data-if="cpp" style="display:none">GetDataCode2dParam</span><span data-if="com" style="display:none">GetDataCode2dParam</span><span data-if="dotnet" style="display:none">GetDataCode2dParam</span><span data-if="python" style="display:none">get_data_code_2d_param</span></code> allows to query the
parameters that are used to describe the 2D data code model.
The names of the desired parameters are passed in the generic
parameter <a href="#GenParamName"><i><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></i></a>, the corresponding values are
returned in <a href="#GenParamValue"><i><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></i></a>.
All these parameters can be set and changed at any time with the
operator <a href="set_data_code_2d_param.html"><code><span data-if="hdevelop" style="display:inline">set_data_code_2d_param</span><span data-if="c" style="display:none">set_data_code_2d_param</span><span data-if="cpp" style="display:none">SetDataCode2dParam</span><span data-if="com" style="display:none">SetDataCode2dParam</span><span data-if="dotnet" style="display:none">SetDataCode2dParam</span><span data-if="python" style="display:none">set_data_code_2d_param</span></code></a>.
A list with the names of all parameters that are valid for the used
2D data code type is returned by 该算子
<a href="query_data_code_2d_params.html"><code><span data-if="hdevelop" style="display:inline">query_data_code_2d_params</span><span data-if="c" style="display:none">query_data_code_2d_params</span><span data-if="cpp" style="display:none">QueryDataCode2dParams</span><span data-if="com" style="display:none">QueryDataCode2dParams</span><span data-if="dotnet" style="display:none">QueryDataCode2dParams</span><span data-if="python" style="display:none">query_data_code_2d_params</span></code></a>.
</p>
<p>For an explanation of the concept of the 2D data code reader
see the introduction of chapter <a href="toc_identification_datacode.html">Identification / Data Code</a>.
</p>
<p>Note that the symbol structure of GS1 DataMatrix, GS1 QR Code, GS1 Aztec Code,
and GS1 DotCode is identical to the structure of Data Matrix ECC 200, QR Code,
Aztec Code, and DotCode, respectively. Therefore, all symbology specific parameters
applying to Data Matrix ECC 200, QR Code, Aztec Code, or DotCode apply to their
corresponding GS1 variant
as well. In the following, the explicit enumeration of the parameters for
any particular GS1 code is omitted for sake of readability. Instead, the
relevant parameters names are to be inferred from the parameters for the
corresponding non-GS1 code type or can be explicitly queried by
<a href="query_data_code_2d_params.html"><code><span data-if="hdevelop" style="display:inline">query_data_code_2d_params</span><span data-if="c" style="display:none">query_data_code_2d_params</span><span data-if="cpp" style="display:none">QueryDataCode2dParams</span><span data-if="com" style="display:none">QueryDataCode2dParams</span><span data-if="dotnet" style="display:none">QueryDataCode2dParams</span><span data-if="python" style="display:none">query_data_code_2d_params</span></code></a> with parameter
<i><span data-if="hdevelop" style="display:inline">'get_model_params'</span><span data-if="c" style="display:none">"get_model_params"</span><span data-if="cpp" style="display:none">"get_model_params"</span><span data-if="com" style="display:none">"get_model_params"</span><span data-if="dotnet" style="display:none">"get_model_params"</span><span data-if="python" style="display:none">"get_model_params"</span></i>.
</p>
<p>The following parameters can be queried - ordered by different
categories and data code types:
</p>
<p><b>Size and shape of the symbol:</b>
</p>
<ul>

<li>
<p> Data matrix ECC 200 (including the finder pattern):
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_min'</span><span data-if="c" style="display:none">"symbol_cols_min"</span><span data-if="cpp" style="display:none">"symbol_cols_min"</span><span data-if="com" style="display:none">"symbol_cols_min"</span><span data-if="dotnet" style="display:none">"symbol_cols_min"</span><span data-if="python" style="display:none">"symbol_cols_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of module columns in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_max'</span><span data-if="c" style="display:none">"symbol_cols_max"</span><span data-if="cpp" style="display:none">"symbol_cols_max"</span><span data-if="com" style="display:none">"symbol_cols_max"</span><span data-if="dotnet" style="display:none">"symbol_cols_max"</span><span data-if="python" style="display:none">"symbol_cols_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of module columns in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_min'</span><span data-if="c" style="display:none">"symbol_rows_min"</span><span data-if="cpp" style="display:none">"symbol_rows_min"</span><span data-if="com" style="display:none">"symbol_rows_min"</span><span data-if="dotnet" style="display:none">"symbol_rows_min"</span><span data-if="python" style="display:none">"symbol_rows_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of module rows in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_max'</span><span data-if="c" style="display:none">"symbol_rows_max"</span><span data-if="cpp" style="display:none">"symbol_rows_max"</span><span data-if="com" style="display:none">"symbol_rows_max"</span><span data-if="dotnet" style="display:none">"symbol_rows_max"</span><span data-if="python" style="display:none">"symbol_rows_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of module rows in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_shape'</span><span data-if="c" style="display:none">"symbol_shape"</span><span data-if="cpp" style="display:none">"symbol_shape"</span><span data-if="com" style="display:none">"symbol_shape"</span><span data-if="dotnet" style="display:none">"symbol_shape"</span><span data-if="python" style="display:none">"symbol_shape"</span></i>:</b></dt>
<dd>
<p>

Possible restrictions concerning the module
shape (rectangle and/or square)</p>
<p>
<i>Values:</i> <i><span data-if="hdevelop" style="display:inline">'square'</span><span data-if="c" style="display:none">"square"</span><span data-if="cpp" style="display:none">"square"</span><span data-if="com" style="display:none">"square"</span><span data-if="dotnet" style="display:none">"square"</span><span data-if="python" style="display:none">"square"</span></i>, <i><span data-if="hdevelop" style="display:inline">'rectangle'</span><span data-if="c" style="display:none">"rectangle"</span><span data-if="cpp" style="display:none">"rectangle"</span><span data-if="com" style="display:none">"rectangle"</span><span data-if="dotnet" style="display:none">"rectangle"</span><span data-if="python" style="display:none">"rectangle"</span></i>,
<i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i>.
</p>
</dd>
</dl>

</li>
<li>
<p> QR Code (including the finder pattern):
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'model_type'</span><span data-if="c" style="display:none">"model_type"</span><span data-if="cpp" style="display:none">"model_type"</span><span data-if="com" style="display:none">"model_type"</span><span data-if="dotnet" style="display:none">"model_type"</span><span data-if="python" style="display:none">"model_type"</span></i>:</b></dt>
<dd>
<p>

Type of the QR Code model specification: <i>1</i>,
<i>2</i>,  <i>0</i> (for <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i>)
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'version_min'</span><span data-if="c" style="display:none">"version_min"</span><span data-if="cpp" style="display:none">"version_min"</span><span data-if="com" style="display:none">"version_min"</span><span data-if="dotnet" style="display:none">"version_min"</span><span data-if="python" style="display:none">"version_min"</span></i>:</b></dt>
<dd>
<p>

Minimum symbol version to be read:
[<i>1</i>..<i>40</i>]
(Model 1: [<i>1</i>..<i>14</i>])
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'version_max'</span><span data-if="c" style="display:none">"version_max"</span><span data-if="cpp" style="display:none">"version_max"</span><span data-if="com" style="display:none">"version_max"</span><span data-if="dotnet" style="display:none">"version_max"</span><span data-if="python" style="display:none">"version_max"</span></i>:</b></dt>
<dd>
<p>

Maximum symbol version to be read:
[<i>1</i>..<i>40</i>]
(Model 1: [<i>1</i>..<i>14</i>])
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_min'</span><span data-if="c" style="display:none">"symbol_size_min"</span><span data-if="cpp" style="display:none">"symbol_size_min"</span><span data-if="com" style="display:none">"symbol_size_min"</span><span data-if="dotnet" style="display:none">"symbol_size_min"</span><span data-if="python" style="display:none">"symbol_size_min"</span></i>:</b></dt>
<dd>
<p>

Minimum symbol size (this value is directly linked to the
version <i><span data-if="hdevelop" style="display:inline">'version_min'</span><span data-if="c" style="display:none">"version_min"</span><span data-if="cpp" style="display:none">"version_min"</span><span data-if="com" style="display:none">"version_min"</span><span data-if="dotnet" style="display:none">"version_min"</span><span data-if="python" style="display:none">"version_min"</span></i>):
[<i>21</i>..<i>177</i>]
(Model 1: [<i>21</i>..<i>73</i>])
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_max'</span><span data-if="c" style="display:none">"symbol_size_max"</span><span data-if="cpp" style="display:none">"symbol_size_max"</span><span data-if="com" style="display:none">"symbol_size_max"</span><span data-if="dotnet" style="display:none">"symbol_size_max"</span><span data-if="python" style="display:none">"symbol_size_max"</span></i>:</b></dt>
<dd>
<p>

Maximum symbol size (this value is directly linked to the
version <i><span data-if="hdevelop" style="display:inline">'version_max'</span><span data-if="c" style="display:none">"version_max"</span><span data-if="cpp" style="display:none">"version_max"</span><span data-if="com" style="display:none">"version_max"</span><span data-if="dotnet" style="display:none">"version_max"</span><span data-if="python" style="display:none">"version_max"</span></i>):
[<i>21</i>..<i>177</i>]
(Model 1: [<i>21</i>..<i>73</i>])
</p>
</dd>
</dl>

</li>
<li>
<p> Micro QR Code:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'version_min'</span><span data-if="c" style="display:none">"version_min"</span><span data-if="cpp" style="display:none">"version_min"</span><span data-if="com" style="display:none">"version_min"</span><span data-if="dotnet" style="display:none">"version_min"</span><span data-if="python" style="display:none">"version_min"</span></i>:</b></dt>
<dd>
<p>

Minimum symbol version to be read:
[<i>1</i>..<i>4</i>]
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'version_max'</span><span data-if="c" style="display:none">"version_max"</span><span data-if="cpp" style="display:none">"version_max"</span><span data-if="com" style="display:none">"version_max"</span><span data-if="dotnet" style="display:none">"version_max"</span><span data-if="python" style="display:none">"version_max"</span></i>:</b></dt>
<dd>
<p>

Maximum symbol version to be read:
[<i>1</i>..<i>4</i>]
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_min'</span><span data-if="c" style="display:none">"symbol_size_min"</span><span data-if="cpp" style="display:none">"symbol_size_min"</span><span data-if="com" style="display:none">"symbol_size_min"</span><span data-if="dotnet" style="display:none">"symbol_size_min"</span><span data-if="python" style="display:none">"symbol_size_min"</span></i>:</b></dt>
<dd>
<p>

Minimum symbol size (this value is directly linked to the
version <i><span data-if="hdevelop" style="display:inline">'version_min'</span><span data-if="c" style="display:none">"version_min"</span><span data-if="cpp" style="display:none">"version_min"</span><span data-if="com" style="display:none">"version_min"</span><span data-if="dotnet" style="display:none">"version_min"</span><span data-if="python" style="display:none">"version_min"</span></i>):
[<i>11</i>..<i>17</i>]
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_max'</span><span data-if="c" style="display:none">"symbol_size_max"</span><span data-if="cpp" style="display:none">"symbol_size_max"</span><span data-if="com" style="display:none">"symbol_size_max"</span><span data-if="dotnet" style="display:none">"symbol_size_max"</span><span data-if="python" style="display:none">"symbol_size_max"</span></i>:</b></dt>
<dd>
<p>

Maximum symbol size (this value is directly linked to the
version <i><span data-if="hdevelop" style="display:inline">'version_max'</span><span data-if="c" style="display:none">"version_max"</span><span data-if="cpp" style="display:none">"version_max"</span><span data-if="com" style="display:none">"version_max"</span><span data-if="dotnet" style="display:none">"version_max"</span><span data-if="python" style="display:none">"version_max"</span></i>):
[<i>11</i>..<i>17</i>]
</p>
</dd>
</dl>

</li>
<li>
<p> PDF417:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_min'</span><span data-if="c" style="display:none">"symbol_cols_min"</span><span data-if="cpp" style="display:none">"symbol_cols_min"</span><span data-if="com" style="display:none">"symbol_cols_min"</span><span data-if="dotnet" style="display:none">"symbol_cols_min"</span><span data-if="python" style="display:none">"symbol_cols_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of data columns in the symbol in codewords,
i.e., excluding the codewords of the start/stop
pattern and of the two row indicators.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_max'</span><span data-if="c" style="display:none">"symbol_cols_max"</span><span data-if="cpp" style="display:none">"symbol_cols_max"</span><span data-if="com" style="display:none">"symbol_cols_max"</span><span data-if="dotnet" style="display:none">"symbol_cols_max"</span><span data-if="python" style="display:none">"symbol_cols_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of data columns in the symbol in codewords,
i.e., excluding the codewords of the start/stop
pattern and of the two row indicators.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_min'</span><span data-if="c" style="display:none">"symbol_rows_min"</span><span data-if="cpp" style="display:none">"symbol_rows_min"</span><span data-if="com" style="display:none">"symbol_rows_min"</span><span data-if="dotnet" style="display:none">"symbol_rows_min"</span><span data-if="python" style="display:none">"symbol_rows_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of module rows in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_max'</span><span data-if="c" style="display:none">"symbol_rows_max"</span><span data-if="cpp" style="display:none">"symbol_rows_max"</span><span data-if="com" style="display:none">"symbol_rows_max"</span><span data-if="dotnet" style="display:none">"symbol_rows_max"</span><span data-if="python" style="display:none">"symbol_rows_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of module rows in the symbol.
</p>
</dd>
</dl>

</li>
<li>
<p> Aztec Code (including the finder pattern):
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'format'</span><span data-if="c" style="display:none">"format"</span><span data-if="cpp" style="display:none">"format"</span><span data-if="com" style="display:none">"format"</span><span data-if="dotnet" style="display:none">"format"</span><span data-if="python" style="display:none">"format"</span></i>:</b></dt>
<dd>
<p>

Format of the Aztec Code: space separated list with the
values <i><span data-if="hdevelop" style="display:inline">'compact'</span><span data-if="c" style="display:none">"compact"</span><span data-if="cpp" style="display:none">"compact"</span><span data-if="com" style="display:none">"compact"</span><span data-if="dotnet" style="display:none">"compact"</span><span data-if="python" style="display:none">"compact"</span></i>, <i><span data-if="hdevelop" style="display:inline">'full_range'</span><span data-if="c" style="display:none">"full_range"</span><span data-if="cpp" style="display:none">"full_range"</span><span data-if="com" style="display:none">"full_range"</span><span data-if="dotnet" style="display:none">"full_range"</span><span data-if="python" style="display:none">"full_range"</span></i>, or
<i><span data-if="hdevelop" style="display:inline">'rune'</span><span data-if="c" style="display:none">"rune"</span><span data-if="cpp" style="display:none">"rune"</span><span data-if="com" style="display:none">"rune"</span><span data-if="dotnet" style="display:none">"rune"</span><span data-if="python" style="display:none">"rune"</span></i>
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_min'</span><span data-if="c" style="display:none">"symbol_size_min"</span><span data-if="cpp" style="display:none">"symbol_size_min"</span><span data-if="com" style="display:none">"symbol_size_min"</span><span data-if="dotnet" style="display:none">"symbol_size_min"</span><span data-if="python" style="display:none">"symbol_size_min"</span></i>:</b></dt>
<dd>
<p>

Minimum symbol size
[<i>11</i>..<i>151</i>]
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_size_max'</span><span data-if="c" style="display:none">"symbol_size_max"</span><span data-if="cpp" style="display:none">"symbol_size_max"</span><span data-if="com" style="display:none">"symbol_size_max"</span><span data-if="dotnet" style="display:none">"symbol_size_max"</span><span data-if="python" style="display:none">"symbol_size_max"</span></i>:</b></dt>
<dd>
<p>

Maximum symbol size
[<i>11</i>..<i>151</i>]
</p>
</dd>
</dl>

</li>
<li>
<p> DotCode:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_min'</span><span data-if="c" style="display:none">"symbol_cols_min"</span><span data-if="cpp" style="display:none">"symbol_cols_min"</span><span data-if="com" style="display:none">"symbol_cols_min"</span><span data-if="dotnet" style="display:none">"symbol_cols_min"</span><span data-if="python" style="display:none">"symbol_cols_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of module columns in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_cols_max'</span><span data-if="c" style="display:none">"symbol_cols_max"</span><span data-if="cpp" style="display:none">"symbol_cols_max"</span><span data-if="com" style="display:none">"symbol_cols_max"</span><span data-if="dotnet" style="display:none">"symbol_cols_max"</span><span data-if="python" style="display:none">"symbol_cols_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of module columns in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_min'</span><span data-if="c" style="display:none">"symbol_rows_min"</span><span data-if="cpp" style="display:none">"symbol_rows_min"</span><span data-if="com" style="display:none">"symbol_rows_min"</span><span data-if="dotnet" style="display:none">"symbol_rows_min"</span><span data-if="python" style="display:none">"symbol_rows_min"</span></i>:</b></dt>
<dd>
<p>

Minimum number of module rows in the symbol.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_rows_max'</span><span data-if="c" style="display:none">"symbol_rows_max"</span><span data-if="cpp" style="display:none">"symbol_rows_max"</span><span data-if="com" style="display:none">"symbol_rows_max"</span><span data-if="dotnet" style="display:none">"symbol_rows_max"</span><span data-if="python" style="display:none">"symbol_rows_max"</span></i>:</b></dt>
<dd>
<p>

Maximum number of module rows in the symbol.
</p>
</dd>
</dl>

</li>
</ul>
<p><b>Appearance of the modules in the image:</b>
</p>
<ul>

<li>
<p> All data code types:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'polarity'</span><span data-if="c" style="display:none">"polarity"</span><span data-if="cpp" style="display:none">"polarity"</span><span data-if="com" style="display:none">"polarity"</span><span data-if="dotnet" style="display:none">"polarity"</span><span data-if="python" style="display:none">"polarity"</span></i>:</b></dt>
<dd>
<p>

Possible restrictions concerning the polarity of the
modules, i.e., if they are printed dark on a light
background or vice versa: <i><span data-if="hdevelop" style="display:inline">'dark_on_light'</span><span data-if="c" style="display:none">"dark_on_light"</span><span data-if="cpp" style="display:none">"dark_on_light"</span><span data-if="com" style="display:none">"dark_on_light"</span><span data-if="dotnet" style="display:none">"dark_on_light"</span><span data-if="python" style="display:none">"dark_on_light"</span></i>,
<i><span data-if="hdevelop" style="display:inline">'light_on_dark'</span><span data-if="c" style="display:none">"light_on_dark"</span><span data-if="cpp" style="display:none">"light_on_dark"</span><span data-if="com" style="display:none">"light_on_dark"</span><span data-if="dotnet" style="display:none">"light_on_dark"</span><span data-if="python" style="display:none">"light_on_dark"</span></i>, <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'discard_undecoded_candidates'</span><span data-if="c" style="display:none">"discard_undecoded_candidates"</span><span data-if="cpp" style="display:none">"discard_undecoded_candidates"</span><span data-if="com" style="display:none">"discard_undecoded_candidates"</span><span data-if="dotnet" style="display:none">"discard_undecoded_candidates"</span><span data-if="python" style="display:none">"discard_undecoded_candidates"</span></i></b></dt>
<dd>
<p>

Controls whether candidates that could not be successfully decoded
are stored in the model: <i><span data-if="hdevelop" style="display:inline">'yes'</span><span data-if="c" style="display:none">"yes"</span><span data-if="cpp" style="display:none">"yes"</span><span data-if="com" style="display:none">"yes"</span><span data-if="dotnet" style="display:none">"yes"</span><span data-if="python" style="display:none">"yes"</span></i>, <i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'mirrored'</span><span data-if="c" style="display:none">"mirrored"</span><span data-if="cpp" style="display:none">"mirrored"</span><span data-if="com" style="display:none">"mirrored"</span><span data-if="dotnet" style="display:none">"mirrored"</span><span data-if="python" style="display:none">"mirrored"</span></i>:</b></dt>
<dd>
<p>

Describes whether the symbol is or may be mirrored (which is
equivalent to swapping the rows and columns of the symbol):
<i><span data-if="hdevelop" style="display:inline">'yes'</span><span data-if="c" style="display:none">"yes"</span><span data-if="cpp" style="display:none">"yes"</span><span data-if="com" style="display:none">"yes"</span><span data-if="dotnet" style="display:none">"yes"</span><span data-if="python" style="display:none">"yes"</span></i>, <i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i>, <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i>.
</p>
</dd>
</dl>

</li>
<li>
<p> All data code types except Data Matrix ECC 200 and DotCode:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'contrast_min'</span><span data-if="c" style="display:none">"contrast_min"</span><span data-if="cpp" style="display:none">"contrast_min"</span><span data-if="com" style="display:none">"contrast_min"</span><span data-if="dotnet" style="display:none">"contrast_min"</span><span data-if="python" style="display:none">"contrast_min"</span></i>:</b></dt>
<dd>
<p>

Minimum contrast between the foreground and the background
of the symbol (specified as gray value difference).
This measure corresponds to the minimum
gradient between the symbol's foreground and the
background.
</p>
</dd>
</dl>

</li>
<li>
<p> All data code types except PDF417:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'module_size_min'</span><span data-if="c" style="display:none">"module_size_min"</span><span data-if="cpp" style="display:none">"module_size_min"</span><span data-if="com" style="display:none">"module_size_min"</span><span data-if="dotnet" style="display:none">"module_size_min"</span><span data-if="python" style="display:none">"module_size_min"</span></i>:</b></dt>
<dd>
<p>

Minimum module size in the image in pixels.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_size_max'</span><span data-if="c" style="display:none">"module_size_max"</span><span data-if="cpp" style="display:none">"module_size_max"</span><span data-if="com" style="display:none">"module_size_max"</span><span data-if="dotnet" style="display:none">"module_size_max"</span><span data-if="python" style="display:none">"module_size_max"</span></i>:</b></dt>
<dd>
<p>

Maximum module size in the image in pixels.
</p>
</dd>
</dl>

<p>With the following parameters it is possible to specify whether
neighboring foreground modules are connected or whether there is
or may be a gap between them (possible values are <i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i>
(no gap) &lt; <i><span data-if="hdevelop" style="display:inline">'small'</span><span data-if="c" style="display:none">"small"</span><span data-if="cpp" style="display:none">"small"</span><span data-if="com" style="display:none">"small"</span><span data-if="dotnet" style="display:none">"small"</span><span data-if="python" style="display:none">"small"</span></i> &lt; <i><span data-if="hdevelop" style="display:inline">'big'</span><span data-if="c" style="display:none">"big"</span><span data-if="cpp" style="display:none">"big"</span><span data-if="com" style="display:none">"big"</span><span data-if="dotnet" style="display:none">"big"</span><span data-if="python" style="display:none">"big"</span></i>)
(for DotCode, only <i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i> and  <i><span data-if="hdevelop" style="display:inline">'small'</span><span data-if="c" style="display:none">"small"</span><span data-if="cpp" style="display:none">"small"</span><span data-if="com" style="display:none">"small"</span><span data-if="dotnet" style="display:none">"small"</span><span data-if="python" style="display:none">"small"</span></i> are
available):
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'module_gap_min'</span><span data-if="c" style="display:none">"module_gap_min"</span><span data-if="cpp" style="display:none">"module_gap_min"</span><span data-if="com" style="display:none">"module_gap_min"</span><span data-if="dotnet" style="display:none">"module_gap_min"</span><span data-if="python" style="display:none">"module_gap_min"</span></i>:</b></dt>
<dd>
<p>

Minimum gap.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_gap_max'</span><span data-if="c" style="display:none">"module_gap_max"</span><span data-if="cpp" style="display:none">"module_gap_max"</span><span data-if="com" style="display:none">"module_gap_max"</span><span data-if="dotnet" style="display:none">"module_gap_max"</span><span data-if="python" style="display:none">"module_gap_max"</span></i>:</b></dt>
<dd>
<p>

Maximum gap.
</p>
</dd>
</dl>

</li>
<li>
<p> All data code types except DotCode:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'small_modules_robustness'</span><span data-if="c" style="display:none">"small_modules_robustness"</span><span data-if="cpp" style="display:none">"small_modules_robustness"</span><span data-if="com" style="display:none">"small_modules_robustness"</span><span data-if="dotnet" style="display:none">"small_modules_robustness"</span><span data-if="python" style="display:none">"small_modules_robustness"</span></i>:</b></dt>
<dd>
<p>

Robustness of the decoding of data codes with very small
module sizes. Setting the parameter
<i><span data-if="hdevelop" style="display:inline">'small_modules_robustness'</span><span data-if="c" style="display:none">"small_modules_robustness"</span><span data-if="cpp" style="display:none">"small_modules_robustness"</span><span data-if="com" style="display:none">"small_modules_robustness"</span><span data-if="dotnet" style="display:none">"small_modules_robustness"</span><span data-if="python" style="display:none">"small_modules_robustness"</span></i> to <i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i>
increases the likelihood of being able to
decode data codes with very small module sizes. Additionally,
in that case the minimum module size should also be adapted
accordingly, thus <i><span data-if="hdevelop" style="display:inline">'module_size_min'</span><span data-if="c" style="display:none">"module_size_min"</span><span data-if="cpp" style="display:none">"module_size_min"</span><span data-if="com" style="display:none">"module_size_min"</span><span data-if="dotnet" style="display:none">"module_size_min"</span><span data-if="python" style="display:none">"module_size_min"</span></i> and
<i><span data-if="hdevelop" style="display:inline">'module_width_min'</span><span data-if="c" style="display:none">"module_width_min"</span><span data-if="cpp" style="display:none">"module_width_min"</span><span data-if="com" style="display:none">"module_width_min"</span><span data-if="dotnet" style="display:none">"module_width_min"</span><span data-if="python" style="display:none">"module_width_min"</span></i> (PDF417) should be set to
the expected minimum module size and width, respectively. Setting
<i><span data-if="hdevelop" style="display:inline">'small_modules_robustness'</span><span data-if="c" style="display:none">"small_modules_robustness"</span><span data-if="cpp" style="display:none">"small_modules_robustness"</span><span data-if="com" style="display:none">"small_modules_robustness"</span><span data-if="dotnet" style="display:none">"small_modules_robustness"</span><span data-if="python" style="display:none">"small_modules_robustness"</span></i> to <i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i> can
significantly increase the internal memory usage of
<a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a>. Thus, in the default case
<i><span data-if="hdevelop" style="display:inline">'small_modules_robustness'</span><span data-if="c" style="display:none">"small_modules_robustness"</span><span data-if="cpp" style="display:none">"small_modules_robustness"</span><span data-if="com" style="display:none">"small_modules_robustness"</span><span data-if="dotnet" style="display:none">"small_modules_robustness"</span><span data-if="python" style="display:none">"small_modules_robustness"</span></i> should be set to <i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i>.
</p>
<p><i>Values:</i> <i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i>, <i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i></p>
<p>
<i>Default:</i> <i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i> (enhanced: <i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i>,
maximum: <i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i>)
</p>
</dd>
</dl>

</li>
<li>
<p> PDF417:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'module_width_min'</span><span data-if="c" style="display:none">"module_width_min"</span><span data-if="cpp" style="display:none">"module_width_min"</span><span data-if="com" style="display:none">"module_width_min"</span><span data-if="dotnet" style="display:none">"module_width_min"</span><span data-if="python" style="display:none">"module_width_min"</span></i>:</b></dt>
<dd>
<p>

Minimum module width in the image in pixels.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_width_max'</span><span data-if="c" style="display:none">"module_width_max"</span><span data-if="cpp" style="display:none">"module_width_max"</span><span data-if="com" style="display:none">"module_width_max"</span><span data-if="dotnet" style="display:none">"module_width_max"</span><span data-if="python" style="display:none">"module_width_max"</span></i>:</b></dt>
<dd>
<p>

Maximum module width in the image in pixels.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_aspect_min'</span><span data-if="c" style="display:none">"module_aspect_min"</span><span data-if="cpp" style="display:none">"module_aspect_min"</span><span data-if="com" style="display:none">"module_aspect_min"</span><span data-if="dotnet" style="display:none">"module_aspect_min"</span><span data-if="python" style="display:none">"module_aspect_min"</span></i>:</b></dt>
<dd>
<p>

Minimum module aspect ratio (module height to module width).
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_aspect_max'</span><span data-if="c" style="display:none">"module_aspect_max"</span><span data-if="cpp" style="display:none">"module_aspect_max"</span><span data-if="com" style="display:none">"module_aspect_max"</span><span data-if="dotnet" style="display:none">"module_aspect_max"</span><span data-if="python" style="display:none">"module_aspect_max"</span></i>:</b></dt>
<dd>
<p>

Maximum module aspect ratio (module height to module width).
</p>
</dd>
</dl>

</li>
<li>
<p> Aztec Code:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span></i>:</b></dt>
<dd>
<p>

Tolerance of the search with respect to a defect or partially
occluded finder pattern. Depending on this parameter, different
algorithms are used during the symbol search in
<a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a>.  In one case (<i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i>), it is assumed
that all rings of the finder pattern can be extracted. In the other
case (<i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i>) it is assumed that at least one of the
rings of the finder pattern can be extracted.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'additional_levels'</span><span data-if="c" style="display:none">"additional_levels"</span><span data-if="cpp" style="display:none">"additional_levels"</span><span data-if="com" style="display:none">"additional_levels"</span><span data-if="dotnet" style="display:none">"additional_levels"</span><span data-if="python" style="display:none">"additional_levels"</span></i>:</b></dt>
<dd><p>

To increase the robustness of the Aztec Code reader, a number of
additional search levels (in addition to the search levels derived
from the minimum and maximum module dimensions) can be specified via
this parameter. [<i>0</i>..<i>2</i>]
</p></dd>
</dl>

</li>
<li>
<p> Data matrix ECC 200:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'slant_max'</span><span data-if="c" style="display:none">"slant_max"</span><span data-if="cpp" style="display:none">"slant_max"</span><span data-if="com" style="display:none">"slant_max"</span><span data-if="dotnet" style="display:none">"slant_max"</span><span data-if="python" style="display:none">"slant_max"</span></i>:</b></dt>
<dd>
<p>

Maximum slant of the L-shaped finder pattern (the angle is returned
in radians and corresponds to the distortion that occurs  when the
symbol is printed or during the image acquisition).
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span></i>:</b></dt>
<dd>
<p>

Tolerance of the search with respect to a defect or
partially occluded finder pattern. The finder pattern
includes the L-shaped side as well as the opposite
alternating side.  Depending on this parameter, different
algorithms are used during the symbol search in
<a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a>.  In one case (<i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i>),
it is assumed that the finder pattern is present to a high
degree and shows almost no disturbances. In the other case
(<i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i>), the finder pattern may be defect or
partially occluded without influencing the recognition and
the reading of the symbol.
Note, however, that in this mode
the parameters for the symbol search should be restricted
as narrow as possible by using
<a href="set_data_code_2d_param.html"><code><span data-if="hdevelop" style="display:inline">set_data_code_2d_param</span><span data-if="c" style="display:none">set_data_code_2d_param</span><span data-if="cpp" style="display:none">SetDataCode2dParam</span><span data-if="com" style="display:none">SetDataCode2dParam</span><span data-if="dotnet" style="display:none">SetDataCode2dParam</span><span data-if="python" style="display:none">set_data_code_2d_param</span></code></a> because otherwise the
runtime of <a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a> may increase
significantly.
Also note that the two algorithms slightly
differ from each other in terms of robustness. This may
lead to different results depending on the value of
<i><span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span></i> even if the finder
pattern of the symbol is not disturbed. For example, if
<i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i> is chosen, only symbols with an equidistant
module grid can be found (see below), and hence the
robustness to perspective distortions is
decreased. Finally, if <i><span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span></i>
is set to <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i> both algorithms are applied.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'module_grid'</span><span data-if="c" style="display:none">"module_grid"</span><span data-if="cpp" style="display:none">"module_grid"</span><span data-if="com" style="display:none">"module_grid"</span><span data-if="dotnet" style="display:none">"module_grid"</span><span data-if="python" style="display:none">"module_grid"</span></i>:</b></dt>
<dd>
<p>

Describes whether the size of the modules may vary (in a
specific range) or not.  Dependent on the parameter
different algorithms are used for the calculation of the
module's center positions.  If it is set to
<i><span data-if="hdevelop" style="display:inline">'fixed'</span><span data-if="c" style="display:none">"fixed"</span><span data-if="cpp" style="display:none">"fixed"</span><span data-if="com" style="display:none">"fixed"</span><span data-if="dotnet" style="display:none">"fixed"</span><span data-if="python" style="display:none">"fixed"</span></i>, an equidistant grid is used.  Allowing a
variable module size (<i><span data-if="hdevelop" style="display:inline">'variable'</span><span data-if="c" style="display:none">"variable"</span><span data-if="cpp" style="display:none">"variable"</span><span data-if="com" style="display:none">"variable"</span><span data-if="dotnet" style="display:none">"variable"</span><span data-if="python" style="display:none">"variable"</span></i>), the grid is
aligned only to the alternating side of the finder pattern.
With <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i> both approaches are tested one after
the other. Please note that the value of
<i><span data-if="hdevelop" style="display:inline">'module_grid'</span><span data-if="c" style="display:none">"module_grid"</span><span data-if="cpp" style="display:none">"module_grid"</span><span data-if="com" style="display:none">"module_grid"</span><span data-if="dotnet" style="display:none">"module_grid"</span><span data-if="python" style="display:none">"module_grid"</span></i> is ignored if
<i><span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span></i> is set to
<i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i>. In this case, an equidistant grid is
assumed.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'contrast_tolerance'</span><span data-if="c" style="display:none">"contrast_tolerance"</span><span data-if="cpp" style="display:none">"contrast_tolerance"</span><span data-if="com" style="display:none">"contrast_tolerance"</span><span data-if="dotnet" style="display:none">"contrast_tolerance"</span><span data-if="python" style="display:none">"contrast_tolerance"</span></i>:</b></dt>
<dd>
<p>

Describes the tolerance of the search with respect to local
contrast variations (e.g., in the presence of glare or
reflections). Depending on the value of the parameter two
different algorithms are applied. If
<i><span data-if="hdevelop" style="display:inline">'contrast_tolerance'</span><span data-if="c" style="display:none">"contrast_tolerance"</span><span data-if="cpp" style="display:none">"contrast_tolerance"</span><span data-if="com" style="display:none">"contrast_tolerance"</span><span data-if="dotnet" style="display:none">"contrast_tolerance"</span><span data-if="python" style="display:none">"contrast_tolerance"</span></i> is set to <i><span data-if="hdevelop" style="display:inline">'high'</span><span data-if="c" style="display:none">"high"</span><span data-if="cpp" style="display:none">"high"</span><span data-if="com" style="display:none">"high"</span><span data-if="dotnet" style="display:none">"high"</span><span data-if="python" style="display:none">"high"</span></i> the
robustness in the presence of strong local contrast
variations is improved. In the case where
<i><span data-if="hdevelop" style="display:inline">'contrast_tolerance'</span><span data-if="c" style="display:none">"contrast_tolerance"</span><span data-if="cpp" style="display:none">"contrast_tolerance"</span><span data-if="com" style="display:none">"contrast_tolerance"</span><span data-if="dotnet" style="display:none">"contrast_tolerance"</span><span data-if="python" style="display:none">"contrast_tolerance"</span></i> is set to <i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i> the
algorithm less robust to strong local contrast variations,
however it is faster and still able to handle contrast
variations under normal circumstances and therefore
<i><span data-if="hdevelop" style="display:inline">'low'</span><span data-if="c" style="display:none">"low"</span><span data-if="cpp" style="display:none">"low"</span><span data-if="com" style="display:none">"low"</span><span data-if="dotnet" style="display:none">"low"</span><span data-if="python" style="display:none">"low"</span></i> should be used in most cases. If
<i><span data-if="hdevelop" style="display:inline">'contrast_tolerance'</span><span data-if="c" style="display:none">"contrast_tolerance"</span><span data-if="cpp" style="display:none">"contrast_tolerance"</span><span data-if="com" style="display:none">"contrast_tolerance"</span><span data-if="dotnet" style="display:none">"contrast_tolerance"</span><span data-if="python" style="display:none">"contrast_tolerance"</span></i> is set to <i><span data-if="hdevelop" style="display:inline">'any'</span><span data-if="c" style="display:none">"any"</span><span data-if="cpp" style="display:none">"any"</span><span data-if="com" style="display:none">"any"</span><span data-if="dotnet" style="display:none">"any"</span><span data-if="python" style="display:none">"any"</span></i> both
algorithms are applied.
</p>
</dd>
</dl>

</li>
<li>
<p> QR Code:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'position_pattern_min'</span><span data-if="c" style="display:none">"position_pattern_min"</span><span data-if="cpp" style="display:none">"position_pattern_min"</span><span data-if="com" style="display:none">"position_pattern_min"</span><span data-if="dotnet" style="display:none">"position_pattern_min"</span><span data-if="python" style="display:none">"position_pattern_min"</span></i>:</b></dt>
<dd>
<p>

Number of position detection patterns that have to be visible
for generating a new symbol candidate (2 or 3).
</p>
</dd>
</dl>

</li>
</ul>
<p><b>General model behavior:</b>
</p>
<ul>

<li>
<p> All data code types:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'persistence'</span><span data-if="c" style="display:none">"persistence"</span><span data-if="cpp" style="display:none">"persistence"</span><span data-if="com" style="display:none">"persistence"</span><span data-if="dotnet" style="display:none">"persistence"</span><span data-if="python" style="display:none">"persistence"</span></i>:</b></dt>
<dd>
<p>

Controls whether certain intermediate results of the symbol
search with <a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a> are stored only
temporarily or persistently in the model: <i>0</i>
(temporary), <i>1</i> (persistent).
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'strict_model'</span><span data-if="c" style="display:none">"strict_model"</span><span data-if="cpp" style="display:none">"strict_model"</span><span data-if="com" style="display:none">"strict_model"</span><span data-if="dotnet" style="display:none">"strict_model"</span><span data-if="python" style="display:none">"strict_model"</span></i>:</b></dt>
<dd>
<p>

Controls the behavior of <a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a> while
detecting symbols that could be read but that do not fit
the model restrictions concerning the size of the symbols:
<i><span data-if="hdevelop" style="display:inline">'yes'</span><span data-if="c" style="display:none">"yes"</span><span data-if="cpp" style="display:none">"yes"</span><span data-if="com" style="display:none">"yes"</span><span data-if="dotnet" style="display:none">"yes"</span><span data-if="python" style="display:none">"yes"</span></i> (strict: such symbols are rejected),
<i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i> (not strict: all readable symbols are
returned as a result independent of their size and the
size specified in the model). Please note that for DotCode symbols
the module size restrictions (<i><span data-if="hdevelop" style="display:inline">'module_size_min'</span><span data-if="c" style="display:none">"module_size_min"</span><span data-if="cpp" style="display:none">"module_size_min"</span><span data-if="com" style="display:none">"module_size_min"</span><span data-if="dotnet" style="display:none">"module_size_min"</span><span data-if="python" style="display:none">"module_size_min"</span></i> and
<i><span data-if="hdevelop" style="display:inline">'module_size_max'</span><span data-if="c" style="display:none">"module_size_max"</span><span data-if="cpp" style="display:none">"module_size_max"</span><span data-if="com" style="display:none">"module_size_max"</span><span data-if="dotnet" style="display:none">"module_size_max"</span><span data-if="python" style="display:none">"module_size_max"</span></i>) are not checked even if
<i><span data-if="hdevelop" style="display:inline">'strict_model'</span><span data-if="c" style="display:none">"strict_model"</span><span data-if="cpp" style="display:none">"strict_model"</span><span data-if="com" style="display:none">"strict_model"</span><span data-if="dotnet" style="display:none">"strict_model"</span><span data-if="python" style="display:none">"strict_model"</span></i> is set to <i><span data-if="hdevelop" style="display:inline">'yes'</span><span data-if="c" style="display:none">"yes"</span><span data-if="cpp" style="display:none">"yes"</span><span data-if="com" style="display:none">"yes"</span><span data-if="dotnet" style="display:none">"yes"</span><span data-if="python" style="display:none">"yes"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'string_encoding'</span><span data-if="c" style="display:none">"string_encoding"</span><span data-if="cpp" style="display:none">"string_encoding"</span><span data-if="com" style="display:none">"string_encoding"</span><span data-if="dotnet" style="display:none">"string_encoding"</span><span data-if="python" style="display:none">"string_encoding"</span></i>:</b></dt>
<dd>
<p>

Returns the expected encoding of the string that is encoded in the
symbol:
<i><span data-if="hdevelop" style="display:inline">'utf8'</span><span data-if="c" style="display:none">"utf8"</span><span data-if="cpp" style="display:none">"utf8"</span><span data-if="com" style="display:none">"utf8"</span><span data-if="dotnet" style="display:none">"utf8"</span><span data-if="python" style="display:none">"utf8"</span></i>, <i><span data-if="hdevelop" style="display:inline">'locale'</span><span data-if="c" style="display:none">"locale"</span><span data-if="cpp" style="display:none">"locale"</span><span data-if="com" style="display:none">"locale"</span><span data-if="dotnet" style="display:none">"locale"</span><span data-if="python" style="display:none">"locale"</span></i>, <i><span data-if="hdevelop" style="display:inline">'latin1'</span><span data-if="c" style="display:none">"latin1"</span><span data-if="cpp" style="display:none">"latin1"</span><span data-if="com" style="display:none">"latin1"</span><span data-if="dotnet" style="display:none">"latin1"</span><span data-if="python" style="display:none">"latin1"</span></i>, or <i><span data-if="hdevelop" style="display:inline">'raw'</span><span data-if="c" style="display:none">"raw"</span><span data-if="cpp" style="display:none">"raw"</span><span data-if="com" style="display:none">"raw"</span><span data-if="dotnet" style="display:none">"raw"</span><span data-if="python" style="display:none">"raw"</span></i>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'symbol_type'</span><span data-if="c" style="display:none">"symbol_type"</span><span data-if="cpp" style="display:none">"symbol_type"</span><span data-if="com" style="display:none">"symbol_type"</span><span data-if="dotnet" style="display:none">"symbol_type"</span><span data-if="python" style="display:none">"symbol_type"</span></i>:</b></dt>
<dd>
<p>

Returns symbol type which was set with <a href="create_data_code_2d_model.html"><code><span data-if="hdevelop" style="display:inline">create_data_code_2d_model</span><span data-if="c" style="display:none">create_data_code_2d_model</span><span data-if="cpp" style="display:none">CreateDataCode2dModel</span><span data-if="com" style="display:none">CreateDataCode2dModel</span><span data-if="dotnet" style="display:none">CreateDataCode2dModel</span><span data-if="python" style="display:none">create_data_code_2d_model</span></code></a>.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'timeout'</span><span data-if="c" style="display:none">"timeout"</span><span data-if="cpp" style="display:none">"timeout"</span><span data-if="com" style="display:none">"timeout"</span><span data-if="dotnet" style="display:none">"timeout"</span><span data-if="python" style="display:none">"timeout"</span></i>:</b></dt>
<dd>
<p>

Enables aborting <a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a> after a defined period in
milliseconds: <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>, <i>-1</i>,
<i>20</i> .. <i>100</i>.
</p>
</dd>
</dl>

</li>
<li>
<p> All data code types except Aztec Code:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'strict_quiet_zone'</span><span data-if="c" style="display:none">"strict_quiet_zone"</span><span data-if="cpp" style="display:none">"strict_quiet_zone"</span><span data-if="com" style="display:none">"strict_quiet_zone"</span><span data-if="dotnet" style="display:none">"strict_quiet_zone"</span><span data-if="python" style="display:none">"strict_quiet_zone"</span></i>:</b></dt>
<dd>
<p>

Controls the behavior of <a href="find_data_code_2d.html"><code><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></code></a> while
detecting symbols that could be read but show defects in
their quiet zone.
Possible values:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'yes'</span><span data-if="c" style="display:none">"yes"</span><span data-if="cpp" style="display:none">"yes"</span><span data-if="com" style="display:none">"yes"</span><span data-if="dotnet" style="display:none">"yes"</span><span data-if="python" style="display:none">"yes"</span></i>:</b></dt>
<dd><p>

Decoded symbols with poor grades for their quiet zone are not
returned as a result.
The quiet zone is validated similar to the method used for
print quality inspection, but regarded as being only one module
large.
The <i><span data-if="hdevelop" style="display:inline">'status'</span><span data-if="c" style="display:none">"status"</span><span data-if="cpp" style="display:none">"status"</span><span data-if="com" style="display:none">"status"</span><span data-if="dotnet" style="display:none">"status"</span><span data-if="python" style="display:none">"status"</span></i> for rejected symbols is set to
<i><span data-if="hdevelop" style="display:inline">'quiet zone is missing'</span><span data-if="c" style="display:none">"quiet zone is missing"</span><span data-if="cpp" style="display:none">"quiet zone is missing"</span><span data-if="com" style="display:none">"quiet zone is missing"</span><span data-if="dotnet" style="display:none">"quiet zone is missing"</span><span data-if="python" style="display:none">"quiet zone is missing"</span></i>.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'no'</span><span data-if="c" style="display:none">"no"</span><span data-if="cpp" style="display:none">"no"</span><span data-if="com" style="display:none">"no"</span><span data-if="dotnet" style="display:none">"no"</span><span data-if="python" style="display:none">"no"</span></i> (default):</b></dt>
<dd><p>

All readable symbols are returned as a result.
</p></dd>
</dl>

</dd>
</dl>

</li>
<li>
<p> All data code types except DotCode:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'quality_isoiec15415_aperture_size'</span><span data-if="c" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="com" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="python" style="display:none">"quality_isoiec15415_aperture_size"</span></i>:</b></dt>
<dd>
<p>

Defines the aperture sizes for ISO/IEC 15415:2011 print quality
inspection as fraction of the module width
(see ISO/IEC 15415:2011 section 7.3.3).
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'quality_isoiec15415_reflectance_reference'</span><span data-if="c" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="com" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="python" style="display:none">"quality_isoiec15415_reflectance_reference"</span></i>:</b></dt>
<dd>
<p>

Defines the reference reflectance for ISO/IEC 15415:2011 print quality
inspection as grayvalue (see ISO/IEC 15415:2011 section 7.3).
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'quality_isoiec15415_smallest_module_size'</span><span data-if="c" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="com" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="python" style="display:none">"quality_isoiec15415_smallest_module_size"</span></i>:</b></dt>
<dd>
<p>

Defines the module size used to obtain the synthetic aperture for ISO/IEC 15415:2011
print quality inspection (see ISO/IEC 15415:2011 section 7.3.3).
</p>
</dd>
</dl>

</li>
<li>
<p> Data Matrix ECC 200:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'candidate_selection'</span><span data-if="c" style="display:none">"candidate_selection"</span><span data-if="cpp" style="display:none">"candidate_selection"</span><span data-if="com" style="display:none">"candidate_selection"</span><span data-if="dotnet" style="display:none">"candidate_selection"</span><span data-if="python" style="display:none">"candidate_selection"</span></i>:</b></dt>
<dd>
<p>

Controls the selection of candidate regions that are used for symbol
detection. Setting this parameter to <i><span data-if="hdevelop" style="display:inline">'extensive'</span><span data-if="c" style="display:none">"extensive"</span><span data-if="cpp" style="display:none">"extensive"</span><span data-if="com" style="display:none">"extensive"</span><span data-if="dotnet" style="display:none">"extensive"</span><span data-if="python" style="display:none">"extensive"</span></i> increases
the number of generated candidate regions and thus the likelihood of
detecting a code. If <i><span data-if="hdevelop" style="display:inline">'candidate_selection'</span><span data-if="c" style="display:none">"candidate_selection"</span><span data-if="cpp" style="display:none">"candidate_selection"</span><span data-if="com" style="display:none">"candidate_selection"</span><span data-if="dotnet" style="display:none">"candidate_selection"</span><span data-if="python" style="display:none">"candidate_selection"</span></i> is set to
<i><span data-if="hdevelop" style="display:inline">'default'</span><span data-if="c" style="display:none">"default"</span><span data-if="cpp" style="display:none">"default"</span><span data-if="com" style="display:none">"default"</span><span data-if="dotnet" style="display:none">"default"</span><span data-if="python" style="display:none">"default"</span></i>, less candidate regions are used.
</p>
</dd>
</dl>

</li>
<li>
<p> DotCode:
</p>
<dl class="generic">


<dt><b><i><span data-if="hdevelop" style="display:inline">'candidate_selection'</span><span data-if="c" style="display:none">"candidate_selection"</span><span data-if="cpp" style="display:none">"candidate_selection"</span><span data-if="com" style="display:none">"candidate_selection"</span><span data-if="dotnet" style="display:none">"candidate_selection"</span><span data-if="python" style="display:none">"candidate_selection"</span></i>:</b></dt>
<dd>
<p>

Controls the selection of candidate regions that are used for symbol
detection. Setting this parameter to <i><span data-if="hdevelop" style="display:inline">'extensive'</span><span data-if="c" style="display:none">"extensive"</span><span data-if="cpp" style="display:none">"extensive"</span><span data-if="com" style="display:none">"extensive"</span><span data-if="dotnet" style="display:none">"extensive"</span><span data-if="python" style="display:none">"extensive"</span></i> increases
the number of generated candidate regions and thus the likelihood of
detecting a code. Setting this parameter to <i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i> all
possible candidates are used and therefore don't get filtered based on
their probability of being a DotCode.
If <i><span data-if="hdevelop" style="display:inline">'candidate_selection'</span><span data-if="c" style="display:none">"candidate_selection"</span><span data-if="cpp" style="display:none">"candidate_selection"</span><span data-if="com" style="display:none">"candidate_selection"</span><span data-if="dotnet" style="display:none">"candidate_selection"</span><span data-if="python" style="display:none">"candidate_selection"</span></i> is set to
<i><span data-if="hdevelop" style="display:inline">'default'</span><span data-if="c" style="display:none">"default"</span><span data-if="cpp" style="display:none">"default"</span><span data-if="com" style="display:none">"default"</span><span data-if="dotnet" style="display:none">"default"</span><span data-if="python" style="display:none">"default"</span></i>, less candidate regions are used.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'max_allowed_error_correction'</span><span data-if="c" style="display:none">"max_allowed_error_correction"</span><span data-if="cpp" style="display:none">"max_allowed_error_correction"</span><span data-if="com" style="display:none">"max_allowed_error_correction"</span><span data-if="dotnet" style="display:none">"max_allowed_error_correction"</span><span data-if="python" style="display:none">"max_allowed_error_correction"</span></i>:</b></dt>
<dd>
<p>

Controls the maximum allowed error correction.
Due to the high error correction capacity, it is possible to
successfully decode false positive DotCode candidates.
Especially candidates which only cover a small part of a
real DotCode may be decoded successfully because of the
error correction capabilities. This is the case because DotCode symbols
can consist of almost every size. So there are fewer criteria
to decide whether the candidate is valid or not. In order to tackle
this problem, the parameter <i><span data-if="hdevelop" style="display:inline">'max_allowed_error_correction'</span><span data-if="c" style="display:none">"max_allowed_error_correction"</span><span data-if="cpp" style="display:none">"max_allowed_error_correction"</span><span data-if="com" style="display:none">"max_allowed_error_correction"</span><span data-if="dotnet" style="display:none">"max_allowed_error_correction"</span><span data-if="python" style="display:none">"max_allowed_error_correction"</span></i> can
be used to specify the percentage of maximum allowed error correction.
Per default the value is set to <i><span data-if="hdevelop" style="display:inline">'1.0'</span><span data-if="c" style="display:none">"1.0"</span><span data-if="cpp" style="display:none">"1.0"</span><span data-if="com" style="display:none">"1.0"</span><span data-if="dotnet" style="display:none">"1.0"</span><span data-if="python" style="display:none">"1.0"</span></i>, which means
100%. Setting the value to e.g., <i><span data-if="hdevelop" style="display:inline">'0.5'</span><span data-if="c" style="display:none">"0.5"</span><span data-if="cpp" style="display:none">"0.5"</span><span data-if="com" style="display:none">"0.5"</span><span data-if="dotnet" style="display:none">"0.5"</span><span data-if="python" style="display:none">"0.5"</span></i> means, only candidates which
could be decoded with maximum 50% used error correction, will be
returned as successfully decoded results.
</p>
</dd>
</dl>

</li>
</ul>
<p>It is possible to query the values of several or all parameters
with a single operator call by passing a tuple containing the names
of all desired parameters to <a href="#GenParamName"><i><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></i></a>.
As a result a tuple of the same length with the corresponding values
is returned in <a href="#GenParamValue"><i><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></i></a>.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="DataCodeHandle" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DataCodeHandle</span><span data-if="c" style="display:none">DataCodeHandle</span><span data-if="cpp" style="display:none">DataCodeHandle</span><span data-if="com" style="display:none">DataCodeHandle</span><span data-if="dotnet" style="display:none">dataCodeHandle</span><span data-if="python" style="display:none">data_code_handle</span></code></b> (input_control)  </span><span>datacode_2d <code>→</code> <span data-if="dotnet" style="display:none"><a href="HDataCode2D.html">HDataCode2D</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">HHandle</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Handle of the 2D data code model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="GenParamName" class="parname"><b><code><span data-if="hdevelop" style="display:inline">GenParamName</span><span data-if="c" style="display:none">GenParamName</span><span data-if="cpp" style="display:none">GenParamName</span><span data-if="com" style="display:none">GenParamName</span><span data-if="dotnet" style="display:none">genParamName</span><span data-if="python" style="display:none">gen_param_name</span></code></b> (input_control)  </span><span>attribute.name(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Names of the generic parameters that
are to be queried for the 2D data code model.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'polarity'</span>
    <span data-if="c" style="display:none">"polarity"</span>
    <span data-if="cpp" style="display:none">"polarity"</span>
    <span data-if="com" style="display:none">"polarity"</span>
    <span data-if="dotnet" style="display:none">"polarity"</span>
    <span data-if="python" style="display:none">"polarity"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'additional_levels'</span><span data-if="c" style="display:none">"additional_levels"</span><span data-if="cpp" style="display:none">"additional_levels"</span><span data-if="com" style="display:none">"additional_levels"</span><span data-if="dotnet" style="display:none">"additional_levels"</span><span data-if="python" style="display:none">"additional_levels"</span>, <span data-if="hdevelop" style="display:inline">'candidate_selection'</span><span data-if="c" style="display:none">"candidate_selection"</span><span data-if="cpp" style="display:none">"candidate_selection"</span><span data-if="com" style="display:none">"candidate_selection"</span><span data-if="dotnet" style="display:none">"candidate_selection"</span><span data-if="python" style="display:none">"candidate_selection"</span>, <span data-if="hdevelop" style="display:inline">'contrast_min'</span><span data-if="c" style="display:none">"contrast_min"</span><span data-if="cpp" style="display:none">"contrast_min"</span><span data-if="com" style="display:none">"contrast_min"</span><span data-if="dotnet" style="display:none">"contrast_min"</span><span data-if="python" style="display:none">"contrast_min"</span>, <span data-if="hdevelop" style="display:inline">'contrast_tolerance'</span><span data-if="c" style="display:none">"contrast_tolerance"</span><span data-if="cpp" style="display:none">"contrast_tolerance"</span><span data-if="com" style="display:none">"contrast_tolerance"</span><span data-if="dotnet" style="display:none">"contrast_tolerance"</span><span data-if="python" style="display:none">"contrast_tolerance"</span>, <span data-if="hdevelop" style="display:inline">'decoding_scheme'</span><span data-if="c" style="display:none">"decoding_scheme"</span><span data-if="cpp" style="display:none">"decoding_scheme"</span><span data-if="com" style="display:none">"decoding_scheme"</span><span data-if="dotnet" style="display:none">"decoding_scheme"</span><span data-if="python" style="display:none">"decoding_scheme"</span>, <span data-if="hdevelop" style="display:inline">'discard_undecoded_candidates'</span><span data-if="c" style="display:none">"discard_undecoded_candidates"</span><span data-if="cpp" style="display:none">"discard_undecoded_candidates"</span><span data-if="com" style="display:none">"discard_undecoded_candidates"</span><span data-if="dotnet" style="display:none">"discard_undecoded_candidates"</span><span data-if="python" style="display:none">"discard_undecoded_candidates"</span>, <span data-if="hdevelop" style="display:inline">'finder_pattern_tolerance'</span><span data-if="c" style="display:none">"finder_pattern_tolerance"</span><span data-if="cpp" style="display:none">"finder_pattern_tolerance"</span><span data-if="com" style="display:none">"finder_pattern_tolerance"</span><span data-if="dotnet" style="display:none">"finder_pattern_tolerance"</span><span data-if="python" style="display:none">"finder_pattern_tolerance"</span>, <span data-if="hdevelop" style="display:inline">'format'</span><span data-if="c" style="display:none">"format"</span><span data-if="cpp" style="display:none">"format"</span><span data-if="com" style="display:none">"format"</span><span data-if="dotnet" style="display:none">"format"</span><span data-if="python" style="display:none">"format"</span>, <span data-if="hdevelop" style="display:inline">'max_allowed_error_correction'</span><span data-if="c" style="display:none">"max_allowed_error_correction"</span><span data-if="cpp" style="display:none">"max_allowed_error_correction"</span><span data-if="com" style="display:none">"max_allowed_error_correction"</span><span data-if="dotnet" style="display:none">"max_allowed_error_correction"</span><span data-if="python" style="display:none">"max_allowed_error_correction"</span>, <span data-if="hdevelop" style="display:inline">'mirrored'</span><span data-if="c" style="display:none">"mirrored"</span><span data-if="cpp" style="display:none">"mirrored"</span><span data-if="com" style="display:none">"mirrored"</span><span data-if="dotnet" style="display:none">"mirrored"</span><span data-if="python" style="display:none">"mirrored"</span>, <span data-if="hdevelop" style="display:inline">'model_type'</span><span data-if="c" style="display:none">"model_type"</span><span data-if="cpp" style="display:none">"model_type"</span><span data-if="com" style="display:none">"model_type"</span><span data-if="dotnet" style="display:none">"model_type"</span><span data-if="python" style="display:none">"model_type"</span>, <span data-if="hdevelop" style="display:inline">'module_aspect_max'</span><span data-if="c" style="display:none">"module_aspect_max"</span><span data-if="cpp" style="display:none">"module_aspect_max"</span><span data-if="com" style="display:none">"module_aspect_max"</span><span data-if="dotnet" style="display:none">"module_aspect_max"</span><span data-if="python" style="display:none">"module_aspect_max"</span>, <span data-if="hdevelop" style="display:inline">'module_aspect_min'</span><span data-if="c" style="display:none">"module_aspect_min"</span><span data-if="cpp" style="display:none">"module_aspect_min"</span><span data-if="com" style="display:none">"module_aspect_min"</span><span data-if="dotnet" style="display:none">"module_aspect_min"</span><span data-if="python" style="display:none">"module_aspect_min"</span>, <span data-if="hdevelop" style="display:inline">'module_gap_max'</span><span data-if="c" style="display:none">"module_gap_max"</span><span data-if="cpp" style="display:none">"module_gap_max"</span><span data-if="com" style="display:none">"module_gap_max"</span><span data-if="dotnet" style="display:none">"module_gap_max"</span><span data-if="python" style="display:none">"module_gap_max"</span>, <span data-if="hdevelop" style="display:inline">'module_gap_min'</span><span data-if="c" style="display:none">"module_gap_min"</span><span data-if="cpp" style="display:none">"module_gap_min"</span><span data-if="com" style="display:none">"module_gap_min"</span><span data-if="dotnet" style="display:none">"module_gap_min"</span><span data-if="python" style="display:none">"module_gap_min"</span>, <span data-if="hdevelop" style="display:inline">'module_grid'</span><span data-if="c" style="display:none">"module_grid"</span><span data-if="cpp" style="display:none">"module_grid"</span><span data-if="com" style="display:none">"module_grid"</span><span data-if="dotnet" style="display:none">"module_grid"</span><span data-if="python" style="display:none">"module_grid"</span>, <span data-if="hdevelop" style="display:inline">'module_size_max'</span><span data-if="c" style="display:none">"module_size_max"</span><span data-if="cpp" style="display:none">"module_size_max"</span><span data-if="com" style="display:none">"module_size_max"</span><span data-if="dotnet" style="display:none">"module_size_max"</span><span data-if="python" style="display:none">"module_size_max"</span>, <span data-if="hdevelop" style="display:inline">'module_size_min'</span><span data-if="c" style="display:none">"module_size_min"</span><span data-if="cpp" style="display:none">"module_size_min"</span><span data-if="com" style="display:none">"module_size_min"</span><span data-if="dotnet" style="display:none">"module_size_min"</span><span data-if="python" style="display:none">"module_size_min"</span>, <span data-if="hdevelop" style="display:inline">'module_width_max'</span><span data-if="c" style="display:none">"module_width_max"</span><span data-if="cpp" style="display:none">"module_width_max"</span><span data-if="com" style="display:none">"module_width_max"</span><span data-if="dotnet" style="display:none">"module_width_max"</span><span data-if="python" style="display:none">"module_width_max"</span>, <span data-if="hdevelop" style="display:inline">'module_width_min'</span><span data-if="c" style="display:none">"module_width_min"</span><span data-if="cpp" style="display:none">"module_width_min"</span><span data-if="com" style="display:none">"module_width_min"</span><span data-if="dotnet" style="display:none">"module_width_min"</span><span data-if="python" style="display:none">"module_width_min"</span>, <span data-if="hdevelop" style="display:inline">'persistence'</span><span data-if="c" style="display:none">"persistence"</span><span data-if="cpp" style="display:none">"persistence"</span><span data-if="com" style="display:none">"persistence"</span><span data-if="dotnet" style="display:none">"persistence"</span><span data-if="python" style="display:none">"persistence"</span>, <span data-if="hdevelop" style="display:inline">'polarity'</span><span data-if="c" style="display:none">"polarity"</span><span data-if="cpp" style="display:none">"polarity"</span><span data-if="com" style="display:none">"polarity"</span><span data-if="dotnet" style="display:none">"polarity"</span><span data-if="python" style="display:none">"polarity"</span>, <span data-if="hdevelop" style="display:inline">'position_pattern_min'</span><span data-if="c" style="display:none">"position_pattern_min"</span><span data-if="cpp" style="display:none">"position_pattern_min"</span><span data-if="com" style="display:none">"position_pattern_min"</span><span data-if="dotnet" style="display:none">"position_pattern_min"</span><span data-if="python" style="display:none">"position_pattern_min"</span>, <span data-if="hdevelop" style="display:inline">'quality_isoiec15415_aperture_size'</span><span data-if="c" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="com" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_aperture_size"</span><span data-if="python" style="display:none">"quality_isoiec15415_aperture_size"</span>, <span data-if="hdevelop" style="display:inline">'quality_isoiec15415_decode_algorithm'</span><span data-if="c" style="display:none">"quality_isoiec15415_decode_algorithm"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_decode_algorithm"</span><span data-if="com" style="display:none">"quality_isoiec15415_decode_algorithm"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_decode_algorithm"</span><span data-if="python" style="display:none">"quality_isoiec15415_decode_algorithm"</span>, <span data-if="hdevelop" style="display:inline">'quality_isoiec15415_reflectance_reference'</span><span data-if="c" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="com" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_reflectance_reference"</span><span data-if="python" style="display:none">"quality_isoiec15415_reflectance_reference"</span>, <span data-if="hdevelop" style="display:inline">'quality_isoiec15415_smallest_module_size'</span><span data-if="c" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="cpp" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="com" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="dotnet" style="display:none">"quality_isoiec15415_smallest_module_size"</span><span data-if="python" style="display:none">"quality_isoiec15415_smallest_module_size"</span>, <span data-if="hdevelop" style="display:inline">'slant_max'</span><span data-if="c" style="display:none">"slant_max"</span><span data-if="cpp" style="display:none">"slant_max"</span><span data-if="com" style="display:none">"slant_max"</span><span data-if="dotnet" style="display:none">"slant_max"</span><span data-if="python" style="display:none">"slant_max"</span>, <span data-if="hdevelop" style="display:inline">'small_modules_robustness'</span><span data-if="c" style="display:none">"small_modules_robustness"</span><span data-if="cpp" style="display:none">"small_modules_robustness"</span><span data-if="com" style="display:none">"small_modules_robustness"</span><span data-if="dotnet" style="display:none">"small_modules_robustness"</span><span data-if="python" style="display:none">"small_modules_robustness"</span>, <span data-if="hdevelop" style="display:inline">'strict_model'</span><span data-if="c" style="display:none">"strict_model"</span><span data-if="cpp" style="display:none">"strict_model"</span><span data-if="com" style="display:none">"strict_model"</span><span data-if="dotnet" style="display:none">"strict_model"</span><span data-if="python" style="display:none">"strict_model"</span>, <span data-if="hdevelop" style="display:inline">'strict_quiet_zone'</span><span data-if="c" style="display:none">"strict_quiet_zone"</span><span data-if="cpp" style="display:none">"strict_quiet_zone"</span><span data-if="com" style="display:none">"strict_quiet_zone"</span><span data-if="dotnet" style="display:none">"strict_quiet_zone"</span><span data-if="python" style="display:none">"strict_quiet_zone"</span>, <span data-if="hdevelop" style="display:inline">'string_encoding'</span><span data-if="c" style="display:none">"string_encoding"</span><span data-if="cpp" style="display:none">"string_encoding"</span><span data-if="com" style="display:none">"string_encoding"</span><span data-if="dotnet" style="display:none">"string_encoding"</span><span data-if="python" style="display:none">"string_encoding"</span>, <span data-if="hdevelop" style="display:inline">'symbol_cols_max'</span><span data-if="c" style="display:none">"symbol_cols_max"</span><span data-if="cpp" style="display:none">"symbol_cols_max"</span><span data-if="com" style="display:none">"symbol_cols_max"</span><span data-if="dotnet" style="display:none">"symbol_cols_max"</span><span data-if="python" style="display:none">"symbol_cols_max"</span>, <span data-if="hdevelop" style="display:inline">'symbol_cols_min'</span><span data-if="c" style="display:none">"symbol_cols_min"</span><span data-if="cpp" style="display:none">"symbol_cols_min"</span><span data-if="com" style="display:none">"symbol_cols_min"</span><span data-if="dotnet" style="display:none">"symbol_cols_min"</span><span data-if="python" style="display:none">"symbol_cols_min"</span>, <span data-if="hdevelop" style="display:inline">'symbol_rows_max'</span><span data-if="c" style="display:none">"symbol_rows_max"</span><span data-if="cpp" style="display:none">"symbol_rows_max"</span><span data-if="com" style="display:none">"symbol_rows_max"</span><span data-if="dotnet" style="display:none">"symbol_rows_max"</span><span data-if="python" style="display:none">"symbol_rows_max"</span>, <span data-if="hdevelop" style="display:inline">'symbol_rows_min'</span><span data-if="c" style="display:none">"symbol_rows_min"</span><span data-if="cpp" style="display:none">"symbol_rows_min"</span><span data-if="com" style="display:none">"symbol_rows_min"</span><span data-if="dotnet" style="display:none">"symbol_rows_min"</span><span data-if="python" style="display:none">"symbol_rows_min"</span>, <span data-if="hdevelop" style="display:inline">'symbol_shape'</span><span data-if="c" style="display:none">"symbol_shape"</span><span data-if="cpp" style="display:none">"symbol_shape"</span><span data-if="com" style="display:none">"symbol_shape"</span><span data-if="dotnet" style="display:none">"symbol_shape"</span><span data-if="python" style="display:none">"symbol_shape"</span>, <span data-if="hdevelop" style="display:inline">'symbol_size_max'</span><span data-if="c" style="display:none">"symbol_size_max"</span><span data-if="cpp" style="display:none">"symbol_size_max"</span><span data-if="com" style="display:none">"symbol_size_max"</span><span data-if="dotnet" style="display:none">"symbol_size_max"</span><span data-if="python" style="display:none">"symbol_size_max"</span>, <span data-if="hdevelop" style="display:inline">'symbol_size_min'</span><span data-if="c" style="display:none">"symbol_size_min"</span><span data-if="cpp" style="display:none">"symbol_size_min"</span><span data-if="com" style="display:none">"symbol_size_min"</span><span data-if="dotnet" style="display:none">"symbol_size_min"</span><span data-if="python" style="display:none">"symbol_size_min"</span>, <span data-if="hdevelop" style="display:inline">'symbol_type'</span><span data-if="c" style="display:none">"symbol_type"</span><span data-if="cpp" style="display:none">"symbol_type"</span><span data-if="com" style="display:none">"symbol_type"</span><span data-if="dotnet" style="display:none">"symbol_type"</span><span data-if="python" style="display:none">"symbol_type"</span>, <span data-if="hdevelop" style="display:inline">'timeout'</span><span data-if="c" style="display:none">"timeout"</span><span data-if="cpp" style="display:none">"timeout"</span><span data-if="com" style="display:none">"timeout"</span><span data-if="dotnet" style="display:none">"timeout"</span><span data-if="python" style="display:none">"timeout"</span>, <span data-if="hdevelop" style="display:inline">'version_max'</span><span data-if="c" style="display:none">"version_max"</span><span data-if="cpp" style="display:none">"version_max"</span><span data-if="com" style="display:none">"version_max"</span><span data-if="dotnet" style="display:none">"version_max"</span><span data-if="python" style="display:none">"version_max"</span>, <span data-if="hdevelop" style="display:inline">'version_min'</span><span data-if="c" style="display:none">"version_min"</span><span data-if="cpp" style="display:none">"version_min"</span><span data-if="com" style="display:none">"version_min"</span><span data-if="dotnet" style="display:none">"version_min"</span><span data-if="python" style="display:none">"version_min"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="GenParamValue" class="parname"><b><code><span data-if="hdevelop" style="display:inline">GenParamValue</span><span data-if="c" style="display:none">GenParamValue</span><span data-if="cpp" style="display:none">GenParamValue</span><span data-if="com" style="display:none">GenParamValue</span><span data-if="dotnet" style="display:none">genParamValue</span><span data-if="python" style="display:none">gen_param_value</span></code></b> (output_control)  </span><span>attribute.value(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[Union[int, str, float]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string / </span><span data-if="hdevelop" style="display:inline">integer / </span><span data-if="hdevelop" style="display:inline">real)</span><span data-if="dotnet" style="display:none"> (<i>string</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long / </span><span data-if="dotnet" style="display:none">double)</span><span data-if="cpp" style="display:none"> (<i>HString</i> / </span><span data-if="cpp" style="display:none">Hlong / </span><span data-if="cpp" style="display:none">double)</span><span data-if="c" style="display:none"> (<i>char*</i> / </span><span data-if="c" style="display:none">Hlong / </span><span data-if="c" style="display:none">double)</span></span>
</div>
<p class="pardesc">Values of the generic parameters.</p>
</div>
<h2 id="sec_result">结果</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">get_data_code_2d_param</span><span data-if="c" style="display:none">get_data_code_2d_param</span><span data-if="cpp" style="display:none">GetDataCode2dParam</span><span data-if="com" style="display:none">GetDataCode2dParam</span><span data-if="dotnet" style="display:none">GetDataCode2dParam</span><span data-if="python" style="display:none">get_data_code_2d_param</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    
if the given parameters are correct.
Otherwise, an exception is raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="query_data_code_2d_params.html"><span data-if="hdevelop" style="display:inline">query_data_code_2d_params</span><span data-if="c" style="display:none">query_data_code_2d_params</span><span data-if="cpp" style="display:none">QueryDataCode2dParams</span><span data-if="com" style="display:none">QueryDataCode2dParams</span><span data-if="dotnet" style="display:none">QueryDataCode2dParams</span><span data-if="python" style="display:none">query_data_code_2d_params</span></a></code>, 
<code><a href="set_data_code_2d_param.html"><span data-if="hdevelop" style="display:inline">set_data_code_2d_param</span><span data-if="c" style="display:none">set_data_code_2d_param</span><span data-if="cpp" style="display:none">SetDataCode2dParam</span><span data-if="com" style="display:none">SetDataCode2dParam</span><span data-if="dotnet" style="display:none">SetDataCode2dParam</span><span data-if="python" style="display:none">set_data_code_2d_param</span></a></code>, 
<code><a href="find_data_code_2d.html"><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="find_data_code_2d.html"><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></a></code>, 
<code><a href="write_data_code_2d_model.html"><span data-if="hdevelop" style="display:inline">write_data_code_2d_model</span><span data-if="c" style="display:none">write_data_code_2d_model</span><span data-if="cpp" style="display:none">WriteDataCode2dModel</span><span data-if="com" style="display:none">WriteDataCode2dModel</span><span data-if="dotnet" style="display:none">WriteDataCode2dModel</span><span data-if="python" style="display:none">write_data_code_2d_model</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="write_data_code_2d_model.html"><span data-if="hdevelop" style="display:inline">write_data_code_2d_model</span><span data-if="c" style="display:none">write_data_code_2d_model</span><span data-if="cpp" style="display:none">WriteDataCode2dModel</span><span data-if="com" style="display:none">WriteDataCode2dModel</span><span data-if="dotnet" style="display:none">WriteDataCode2dModel</span><span data-if="python" style="display:none">write_data_code_2d_model</span></a></code>
</p>
<h2 id="sec_see">参考其它</h2>
<p>
<code><a href="query_data_code_2d_params.html"><span data-if="hdevelop" style="display:inline">query_data_code_2d_params</span><span data-if="c" style="display:none">query_data_code_2d_params</span><span data-if="cpp" style="display:none">QueryDataCode2dParams</span><span data-if="com" style="display:none">QueryDataCode2dParams</span><span data-if="dotnet" style="display:none">QueryDataCode2dParams</span><span data-if="python" style="display:none">query_data_code_2d_params</span></a></code>, 
<code><a href="set_data_code_2d_param.html"><span data-if="hdevelop" style="display:inline">set_data_code_2d_param</span><span data-if="c" style="display:none">set_data_code_2d_param</span><span data-if="cpp" style="display:none">SetDataCode2dParam</span><span data-if="com" style="display:none">SetDataCode2dParam</span><span data-if="dotnet" style="display:none">SetDataCode2dParam</span><span data-if="python" style="display:none">set_data_code_2d_param</span></a></code>, 
<code><a href="get_data_code_2d_results.html"><span data-if="hdevelop" style="display:inline">get_data_code_2d_results</span><span data-if="c" style="display:none">get_data_code_2d_results</span><span data-if="cpp" style="display:none">GetDataCode2dResults</span><span data-if="com" style="display:none">GetDataCode2dResults</span><span data-if="dotnet" style="display:none">GetDataCode2dResults</span><span data-if="python" style="display:none">get_data_code_2d_results</span></a></code>, 
<code><a href="get_data_code_2d_objects.html"><span data-if="hdevelop" style="display:inline">get_data_code_2d_objects</span><span data-if="c" style="display:none">get_data_code_2d_objects</span><span data-if="cpp" style="display:none">GetDataCode2dObjects</span><span data-if="com" style="display:none">GetDataCode2dObjects</span><span data-if="dotnet" style="display:none">GetDataCode2dObjects</span><span data-if="python" style="display:none">get_data_code_2d_objects</span></a></code>, 
<code><a href="find_data_code_2d.html"><span data-if="hdevelop" style="display:inline">find_data_code_2d</span><span data-if="c" style="display:none">find_data_code_2d</span><span data-if="cpp" style="display:none">FindDataCode2d</span><span data-if="com" style="display:none">FindDataCode2d</span><span data-if="dotnet" style="display:none">FindDataCode2d</span><span data-if="python" style="display:none">find_data_code_2d</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Data Code</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
